﻿
#ifndef MAPWIDGETGLOBALQML_H
#define MAPWIDGETGLOBALQML_H


#include <QObject>

class MapModel;
class MapEngineManager;
class AppSettings;

class MapWidgetGlobalQml : public QObject
{
    Q_OBJECT
public:
    explicit MapWidgetGlobalQml(QObject *parent = nullptr);

    Q_PROPERTY(AppSettings*           appSettings           READ    appSettings             CONSTANT)
    Q_PROPERTY(MapModel*              mapModel              READ    mapModel                CONSTANT)
    Q_PROPERTY(MapEngineManager*      mapEngineManager      READ    mapEngineManager        CONSTANT)

    AppSettings*       appSettings         ()  { return _appSettings; }
    MapEngineManager*  mapEngineManager    ()  { return _mapEngineManager; }
    MapModel*          mapModel            ()  { return _mapModel; }

private:
    AppSettings*         _appSettings            = nullptr;
    MapModel*            _mapModel               = nullptr;
    MapEngineManager*    _mapEngineManager       = nullptr;
};

MapWidgetGlobalQml* mapWidgetGlobalQml(void);

#endif // MAPWIDGETGLOBALQML_H
